<?php

namespace Xlib\Form\Prepare;

trait AttributesOnly {

    use Prepare;

    protected function prepareAttributes (array $elementAttributes = null)
    {
        // TODO: использовать обработку дополнительных классов !!!
        $elementAttributes = (array) $elementAttributes;
        $elementName       = $this->getName();
        $elementClasses    = array('ui-element', 'ui-' . static::ELEMENT_TYPE);
        if ($elementName) {
            $elementName             = 'name-' . str_replace('_', '-', strtolower($elementName));
            $elementClasses[]        = $elementName;
            $elementAttributes['id'] = $elementName;
        }
        $elementAttributes['class'] = implode(' ', $elementClasses);
        $this->setAttributes($elementAttributes);
    }

}